#pragma once

#if defined(VMCONTORL_EXPORTS)
#define VMCONTORL_API  __declspec(dllexport)
#else
#define VMCONTORL_API  __declspec(dllimport)
#endif

typedef enum
{
	EXTENDED,
	DUPLICATED,
	PRIMARY_ONLY
} DisplayMode;

#ifdef __cplusplus
extern "C" {
#endif

VMCONTORL_API bool BJOpenVM();

VMCONTORL_API void BJCloseVM();

VMCONTORL_API bool BJNewMonitor();

VMCONTORL_API bool BJDelMonitor();

VMCONTORL_API const char* BJQueryDriverVersion();

VMCONTORL_API bool BJDetectIsOsSupported();

VMCONTORL_API bool BJEchoTest();

VMCONTORL_API int BJEnableDrv();

VMCONTORL_API int BJDisableDrv();

VMCONTORL_API int BJInstallDrv();

VMCONTORL_API int BJUnInstallDrv();

VMCONTORL_API int BJForceExtendMonitor();

VMCONTORL_API int BJForceRestoreMonitor();

VMCONTORL_API int BJForceCloneMonitor();

VMCONTORL_API int BJForceChangeDisp(int width, int height);

VMCONTORL_API DisplayMode BJCheckDisplayMode();

#ifdef __cplusplus
}
#endif